home *** CD-ROM | disk | FTP | other *** search
/ Software of the Month Club 2000 October / Software of the Month - Ultimate Collection Shareware 277.iso / pc / PROGRAMS / UTILITY / WINLINUX / DATA1.CAB / programs_-_include / ASM-SPAR.{_6 / MMAN.H < prev    next >
C/C++ Source or Header  |  1999-09-17  |  2KB  |  50 lines

  1. /* $Id: mman.h,v 1.8 1996/10/27 08:55:28 davem Exp $ */
  2. #ifndef __SPARC_MMAN_H__
  3. #define __SPARC_MMAN_H__
  4.  
  5. /* SunOS'ified... */
  6.  
  7. #define PROT_READ    0x1        /* page can be read */
  8. #define PROT_WRITE    0x2        /* page can be written */
  9. #define PROT_EXEC    0x4        /* page can be executed */
  10. #define PROT_NONE    0x0        /* page can not be accessed */
  11.  
  12. #define MAP_SHARED    0x01        /* Share changes */
  13. #define MAP_PRIVATE    0x02        /* Changes are private */
  14. #define MAP_TYPE    0x0f        /* Mask for type of mapping */
  15. #define MAP_FIXED    0x10        /* Interpret addr exactly */
  16. #define MAP_ANONYMOUS    0x20        /* don't use a file */
  17. #define MAP_RENAME      MAP_ANONYMOUS   /* In SunOS terminology */
  18. #define MAP_NORESERVE   0x40            /* don't reserve swap pages */
  19. #define MAP_INHERIT     0x80            /* SunOS doesn't do this, but... */
  20. #define MAP_LOCKED      0x100           /* lock the mapping */
  21. #define _MAP_NEW        0x80000000      /* Binary compatibility is fun... */
  22.  
  23. #define MAP_GROWSDOWN    0x0100        /* stack-like segment */
  24. #define MAP_DENYWRITE    0x0800        /* ETXTBSY */
  25. #define MAP_EXECUTABLE    0x1000        /* mark it as an executable */
  26.  
  27. #define MS_ASYNC    1        /* sync memory asynchronously */
  28. #define MS_INVALIDATE    2        /* invalidate the caches */
  29. #define MS_SYNC        4        /* synchronous memory sync */
  30.  
  31. #define MCL_CURRENT     0x2000          /* lock all currently mapped pages */
  32. #define MCL_FUTURE      0x4000          /* lock all additions to address space */
  33.  
  34. /* XXX Need to add flags to SunOS's mctl, mlockall, and madvise system
  35.  * XXX calls.
  36.  */
  37.  
  38. /* SunOS sys_mctl() stuff... */
  39. #define MC_SYNC         1  /* Sync pages in memory with storage (usu. a file) */
  40. #define MC_LOCK         2  /* Lock pages into core ram, do not allow swapping of them */
  41. #define MC_UNLOCK       3  /* Unlock pages locked via previous mctl() with MC_LOCK arg */
  42. #define MC_LOCKAS       5  /* Lock an entire address space of the calling process */
  43. #define MC_UNLOCKAS     6  /* Unlock entire address space of calling process */
  44.  
  45. /* compatibility flags */
  46. #define MAP_ANON    MAP_ANONYMOUS
  47. #define MAP_FILE    0
  48.  
  49. #endif /* __SPARC_MMAN_H__ */
  50.